Updates to conform to latest xen-unstable
authordjm@kirby.fc.hp.com <djm@kirby.fc.hp.com>
Fri, 29 Jul 2005 18:52:33 +0000 (11:52 -0700)
committerdjm@kirby.fc.hp.com <djm@kirby.fc.hp.com>
Fri, 29 Jul 2005 18:52:33 +0000 (11:52 -0700)
Fix ns16550 to again handle rx2600 console defaults
Signed-off-by Kevin Tian <Kevin.tian@intel.com>

xen/arch/ia64/pcdp.c
xen/arch/ia64/xenmisc.c
xen/arch/ia64/xensetup.c

index 9cae51129a110f41e7f948ffd5d28c5828d6233d..cab5eb2ff59498d0ffe32f00b3157c78c5c65651 100644 (file)
@@ -24,11 +24,11 @@ static int __init
 setup_serial_console(struct pcdp_uart *uart)
 {
 #ifdef XEN
-       extern struct ns16550_defaults ns16550_com;
-       ns16550_com.baud = uart->baud;
-       ns16550_com.io_base = uart->addr.address;
+       extern struct ns16550_defaults ns16550_com1;
+       ns16550_com1.baud = uart->baud;
+       ns16550_com1.io_base = uart->addr.address;
        if (uart->bits)
-               ns16550_com.data_bits = uart->bits;
+               ns16550_com1.data_bits = uart->bits;
        return 0;
 #else
 #ifdef CONFIG_SERIAL_8250_CONSOLE
index a13eb442c7c2f5d2440480d73b1951e14c554272..4b76af8cab92b2fb21af96fa958032c7f60af233 100644 (file)
@@ -177,6 +177,22 @@ void show_registers(struct pt_regs *regs)
        printf("*** ADD REGISTER DUMP HERE FOR DEBUGGING\n");
 }
 
+int is_kernel_text(unsigned long addr)
+{
+       extern char _stext[], _etext[];
+       if (addr >= (unsigned long) _stext &&
+           addr <= (unsigned long) _etext)
+           return 1;
+
+       return 0;
+}
+
+unsigned long kernel_text_end(void)
+{
+       extern char _etext[];
+       return (unsigned long) _etext;
+}
+
 ///////////////////////////////
 // from common/keyhandler.c
 ///////////////////////////////
index 8553e2bcf4ee409d5b6738f904755c2679a80ecf..7bcc2e7b824f1d2f973638b10eb69994bd789cd4 100644 (file)
@@ -130,7 +130,13 @@ void early_cmdline_parse(char **cmdline_p)
     return;
 }
 
-struct ns16550_defaults ns16550_com = {
+struct ns16550_defaults ns16550_com1 = {
+    .data_bits = 8,
+    .parity    = 'n',
+    .stop_bits = 1
+};
+
+struct ns16550_defaults ns16550_com2 = {
     .data_bits = 8,
     .parity    = 'n',
     .stop_bits = 1
@@ -159,12 +165,11 @@ void start_kernel(void)
     /* We initialise the serial devices very early so we can get debugging. */
     if (running_on_sim) hpsim_serial_init();
     else {
-       ns16550_com.io_base = 0x3f8;
-       ns16550_com.irq     = 4;
-       ns16550_init(0, &ns16550_com);
-       ns16550_com.io_base = 0x2f8;
-       ns16550_com.irq     = 3;
-       ns16550_init(1, &ns16550_com);
+       ns16550_init(0, &ns16550_com1);
+       /* Also init com2 for Tiger4. */
+       ns16550_com2.io_base = 0x2f8;
+       ns16550_com2.irq     = 3;
+       ns16550_init(1, &ns16550_com2);
     }
     serial_init_preirq();